home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / util / cdity / ModeProSrc.lha / Daemon / revision_data < prev    next >
Text File  |  2000-09-17  |  32KB  |  541 lines

  1. ----------------------------------------------------------------------------------------------------
  2. 4.53 @1 - Moved CloseScreen and NewCloseWB from MPPatch.c to 
  3. MPCloseScreenPatch.c
  4.  
  5. ----------------------------------------------------------------------------------------------------
  6. 4.53 @2 - ptOpenNodes.c
  7. Added new function: FindOpenNode()
  8.  
  9. ----------------------------------------------------------------------------------------------------
  10. 4.53 @3 - MPCloseScrPatch.c
  11.  
  12. replaced:
  13.   ...
  14.   on=(struct OpenNode *)MPSem->OpenList.lh_Head;
  15.   while(on->on_Node.ln_Succ)
  16.   {
  17.     if(on->Screen==S)
  18.     {
  19.       Remove((struct Node *)on);
  20.       found=TRUE;
  21.       break;
  22.     }
  23.     on=(struct OpenNode *)on->on_Node.ln_Succ;
  24.   }
  25.   ...
  26. with
  27.   ...
  28.   if(on=FindOpenNode(S))
  29.   {
  30.     Remove(on);
  31.   ...
  32.  
  33. ----------------------------------------------------------------------------------------------------
  34. 4.53 @4 - MPCloseScrPatch.c
  35. Added
  36.   ...
  37.   /* Set flag so MP knows which OpenNode caused signal */
  38.   on->Flags|=(ON_CLOSESIGNAL); //4.53 @4
  39.   ...
  40.  
  41. ----------------------------------------------------------------------------------------------------
  42. 4.53 @5 - MPPatch.c
  43. Commented out
  44.   ...
  45.   //            pd->OpenNode->Flags|=ON_BITMAP; // 4.53 @5 can be determined by chaecking on->BitMap
  46.   ...
  47.  
  48. ----------------------------------------------------------------------------------------------------
  49. 4.53 @6 - MPPatch.c
  50. Added since SendMPMsg nolonger checks for a Data ptr.
  51.       if(pd->OpenNode) // 4.53 @6
  52.       {
  53.  
  54. ----------------------------------------------------------------------------------------------------
  55. 4.53 @7 - MPPatch.c
  56. Renamed SendOpenNode to SendMPMsg and parms change
  57. ...
  58. // 4.53 @7 renamed, parameter renamed
  59. BOOL SendMPMsg(ULONG Command, ULONG Code, APTR Data)
  60. ...
  61.  
  62. ----------------------------------------------------------------------------------------------------
  63. 4.53 @8 - MPLockPubPatch.c
  64. Added 
  65.             ...
  66.             //4.53 @8 now clears ON_OPEN flag
  67.             ObtainSemaphore(&MPSem->OpenListSem);
  68.             if(on=FindOpenNode(ps))
  69.             {
  70.               // clear the open flag so MP can close the screen
  71.               on->Flags&=(~ON_OPEN);
  72.             }
  73.             ReleaseSemaphore(&MPSem->OpenListSem);
  74.             ...
  75. ----------------------------------------------------------------------------------------------------
  76. 4.53 @9 - MPLockPubPatch.c
  77.  
  78. // 4.53 New Patch
  79. void __saveds __asm NewUnlockPubScreen(register __a0 UBYTE *Name, 
  80.  
  81. ----------------------------------------------------------------------------------------------------
  82. 4.53 @10 - MPMain.c
  83. Added:
  84.   ... 
  85.   //4.53 @10 Scan pubscreen list and check for screens that need to be closed  
  86.   ...
  87.  
  88. ----------------------------------------------------------------------------------------------------
  89. 4.53 @11 - MPLockPubPatch.c
  90. New semaphore should keep duplicate pubscreens from being created in a race condition
  91.  
  92. ----------------------------------------------------------------------------------------------------
  93. 4.53 @12 - MPCloseScrPatch.c
  94. Rewritten:
  95.   No won't removes *on until it needs to.
  96.   
  97.  
  98.  
  99.  
  100. ----------------------------------------------------------------------------------------------------
  101. 4.54 @1 - 
  102. Removed most of Obtaining (NodeSem and ListSem) to fix deadlock
  103.  
  104.  
  105. ----------------------------------------------------------------------------------------------------
  106. 4.55 @1 - MPNodes.c
  107. added check for NULL name.
  108.  
  109. ----------------------------------------------------------------------------------------------------
  110. 4.55 @2 - ptOpenNodes.c
  111. Commented out
  112.  if(FindDisplayInfo) // 4.55 @3 MPPatch.c
  113.  
  114. ----------------------------------------------------------------------------------------------------
  115. 4.55 @3 - MPCloseScreen.c
  116.   // 4.55 @3 - rv was not set till 4.55
  117.  
  118. ----------------------------------------------------------------------------------------------------
  119. 4.55 @4 - MPCloseScreen.c
  120.   PubScreenStatus(on->Screen,PSNF_PRIVATE);       // Attempt to make screen private, if we can, close it! 4.55 @4 Could fail if public screen was already private!  Causing unclosable open screen.
  121.  
  122. ----------------------------------------------------------------------------------------------------
  123. 4.55 @5 - MPCloseScreen.c
  124. /* 4.55 transplanted from mpmain.c */
  125. void ClosePubScreens(void)  
  126.  
  127.  
  128. ----------------------------------------------------------------------------------------------------
  129. (4.55.6) - Work:sc/Programs/ModePro/Daemon/MPCloseScrPatch.c
  130. Description: Moved code from MPMain.c
  131. ...
  132. /* transplanted from mpmain.c *///                                                                     (4.55.6)
  133. void ClosePubScreens(void)  
  134. ...
  135.  
  136. ----------------------------------------------------------------------------------------------------
  137. (4.55.7) - Work:sc/Programs/ModePro/Daemon/MPCloseScrPatch.c
  138. Description: ScreenNotify Kludge
  139. ...
  140.         /* The big birdie kludge //                                                                    (4.55.7)
  141.             1. Check to see if the screen is private//                                                 (4.55.7)
  142.             2. Find out if the screen is private (used later)//                                        (4.55.7)
  143.             3. Attempt to make the screen private.  This should remove any visitors from the screennotify library. (Birdie)//  (4.55.7)
  144.             4. Check to see if any visitors are on the screen //                                       (4.55.7)
  145.                If none then try to close it//                                                          (4.55.7)
  146.             5. If it didn't close for some add reason, then add the backdrop and make the screen public again//  (4.55.7)
  147.         *///                                                                                           (4.55.7)
  148.         plist=LockPubScreenList();                      //                                             (4.55.7)
  149.         PROCESS_LIST(plist,psn)//                                                                      (4.55.7)
  150.         {//                                                                                            (4.55.7)
  151.           if(on->Screen==psn->psn_Screen)//                                                            (4.55.7)
  152.           {//                                                                                          (4.55.7)
  153.             ispublic=!(psn->psn_Flags & PSNF_PRIVATE);//                                               (4.55.7)
  154.           }//                                                                                          (4.55.7)
  155.         }//                                                                                            (4.55.7)
  156.         UnlockPubScreenList();//                                                                       (4.55.7)
  157.         //                                                                                             (4.55.7)
  158.         PubScreenStatus(on->Screen,PSNF_PRIVATE); //                                                   (4.55.7)
  159.         //                                                                                             (4.55.7)
  160.         plist=LockPubScreenList();                      //                                             (4.55.7)
  161.         PROCESS_LIST(plist,psn)//                                                                      (4.55.7)
  162.         {//                                                                                            (4.55.7)
  163.           if(on->Screen==psn->psn_Screen)//                                                            (4.55.7)
  164.           {//                                                                                          (4.55.7)
  165.             if(psn->psn_VisitorCount==0)//                                                             (4.55.7)
  166.             {//                                                                                        (4.55.7)
  167.               closeit=1;//                                                                             (4.55.7)
  168.             }//                                                                                        (4.55.7)
  169.           }//                                                                                          (4.55.7)
  170.         }//                                                                                            (4.55.7)
  171.         UnlockPubScreenList();//                                                                       (4.55.7)
  172.         //                                                                                             (4.55.7)
  173.         if(closeit)                                     // Only close it if no visitors //             (4.55.7)
  174.         {//                                                                                            (4.55.7)
  175.           RemoveBackdrop(on->Screen);                   // Remove any backdrop (handles no backdrops)//  (4.55.7)
  176.           PreCloseOpenNode(on);                         // Free data that needs to be freed BEFORE the screen closes (ie Pens)//  (4.55.7)
  177.           //                                                                                           (4.55.7)
  178.           if(rv=OldCloseScreen(on->Screen,IntuitionBase)) // Attempt to Close the screen//             (4.55.7)
  179.           {//                                                                                          (4.55.7)
  180.             Remove((struct Node *)on);                  // 4.53 @12 - Remove Node from OpenList//      (4.55.7)
  181.             FreeOpenNode(on);                           // Free the OpenNode//                         (4.55.7)
  182. DEBUG_CODE(DKP("  CloseScreen() really closes screen!\n"););//                                         (4.55.7)
  183.           }//                                                                                          (4.55.7)
  184.         }//                                                                                            (4.55.7)
  185.         //                                                                                             (4.55.7)
  186.         if(ispublic && !rv)                             // if the screen was public and closescreen failed.//  (4.55.7)
  187.         {//                                                                                            (4.55.7)
  188.           PubScreenStatus(on->Screen,0);                // Then make the screen public again.//        (4.55.7)
  189.           AddBackdrop(on->Screen,on->DN);               // Re add the backdrop//                       (4.55.7)
  190.         }//                                                                                            (4.55.7)
  191.       }
  192. ...
  193.  
  194. ----------------------------------------------------------------------------------------------------
  195. (4.55.8) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  196. Description:
  197. ...
  198.           /* Pick a ModeID */ //                                                                       (4.55.8)
  199.           if(FindDisplayInfo(pd->DNode->ModeID)) // 4.55 @3//                                          (4.55.8)
  200.           {//                                                                                          (4.55.8)
  201.             pd->ModeID        =pd->DNode->ModeID;//                                                    (4.55.8)
  202.           }//                                                                                          (4.55.8)
  203.           else // If the screen Mode doesn't exist try to find a new mode//                            (4.55.8)
  204.           {//                                                                                          (4.55.8)
  205.             if(V39)//                                                                                  (4.55.8)
  206.             {//                                                                                        (4.55.8)
  207.               pd->ModeID=BestModeID(//                                                                 (4.55.8)
  208.                         BIDTAG_DesiredWidth,    pd->Width,//                                           (4.55.8)
  209.                         BIDTAG_DesiredHeight,   pd->Height,//                                          (4.55.8)
  210.                         BIDTAG_NominalWidth,    pd->Width,//                                           (4.55.8)
  211.                         BIDTAG_NominalHeight,   pd->Height,//                                          (4.55.8)
  212.                         (pd->SetDepth ? BIDTAG_Depth:TAG_IGNORE),           pd->Depth,//               (4.55.8)
  213.                         TAG_DONE);//                                                                   (4.55.8)
  214. //                                                                                                     (4.55.8)
  215.             }//                                                                                        (4.55.8)
  216.           }
  217. ...
  218.  
  219. ----------------------------------------------------------------------------------------------------
  220. (4.56.1) - Work:sc/Programs/ModePro/Daemon/MPWinPatch.c
  221. Description:
  222. ...
  223.  
  224. ...
  225.  
  226. ----------------------------------------------------------------------------------------------------
  227. (4.56.2) - Work:sc/Programs/ModePro/Daemon/MPWinPatch.c
  228. Description: added debug code
  229. ...
  230. //                                                                                                     (4.56.2)
  231. DEBUG_CODE(//                                                                                          (4.56.2)
  232.    DKP("OpenWindowTagList(%8lx,%8lx)\n",nw,TagList);//                                                 (4.56.2)
  233.    PrintWindowTags(nw->Extension);//                                                                   (4.56.2)
  234.       );  
  235. ...
  236.  
  237. ----------------------------------------------------------------------------------------------------
  238. (4.56.3) - Work:sc/Programs/ModePro/Daemon/ptDebug.c
  239. Description: New debug funtion
  240. ...
  241. void PrintNewWindowData(struct ExtNewWindow *nw)
  242. ...
  243.  
  244. ----------------------------------------------------------------------------------------------------
  245. (4.56.4) - Work:sc/Programs/ModePro/Daemon/ptDebug.c
  246. Description: New debug funtion
  247. ...
  248. void PrintWindowTags(struct TagItem *TagList)
  249. ...
  250.  
  251. ----------------------------------------------------------------------------------------------------
  252. (4.56.5) - Work:sc/Programs/ModePro/Daemon/MPCloseScrPatch.c
  253. Description: Now returns LONG instead of BOOL
  254. ...
  255. LONG __saveds ASM NewCloseScreen(REG __a0 struct Screen *S,//                                          (4.56.5)
  256.                                  REG __a6 struct IntuitionBase *IBase)
  257. ...
  258.  
  259. ----------------------------------------------------------------------------------------------------
  260. (4.56.6) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  261. Description: Replaced call to dos/GetProgram name to MyGetProgramName due to hit in dos version (I think)
  262. ...
  263. LONG MyGetProgramName(STRPTR Buffer, LONG Len)//                                                       (4.56.6)
  264. {//                                                                                                    (4.56.6)
  265.   LONG bp,l;//                                                                                         (4.56.6)
  266.   struct Process *p;//                                                                                 (4.56.6)
  267.   struct CommandLineInterface *cli;//                                                                  (4.56.6)
  268.   UBYTE *name;//                                                                                       (4.56.6)
  269. //                                                                                                     (4.56.6)
  270.   l=0;//                                                                                               (4.56.6)
  271. //                                                                                                     (4.56.6)
  272.   p=(struct Process *)FindTask(0);//                                                                   (4.56.6)
  273.   if(p->pr_Task.tc_Node.ln_Type==NT_PROCESS)//                                                         (4.56.6)
  274.   {//                                                                                                  (4.56.6)
  275.     // We are a process//                                                                              (4.56.6)
  276.     if(bp=(p->pr_CLI<<2))//                                                                            (4.56.6)
  277.     {//                                                                                                (4.56.6)
  278.       cli=(struct CommandLineInterface *)bp;//                                                         (4.56.6)
  279.       if(name=(UBYTE *)(cli->cli_CommandName<<2))             //                                       (4.56.6)
  280.       {//                                                                                              (4.56.6)
  281.         for(l=0;l<name[0] && l<Len-1;l++)       // Copy BSTR to CSTR string//                          (4.56.6)
  282.         {//                                                                                            (4.56.6)
  283.           Buffer[l]=name[l+1];  //                                                                     (4.56.6)
  284.         }//                                                                                            (4.56.6)
  285.         name[l]=0;                              // Add NULL //                                         (4.56.6)
  286.       }//                                                                                              (4.56.6)
  287.     }//                                                                                                (4.56.6)
  288.   }//                                                                                                  (4.56.6)
  289.   return(l);//                                                                                         (4.56.6)
  290. }
  291. ...
  292. 4.57 begins here
  293. ----------------------------------------------------------------------------------------------------
  294. (4.56.7) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  295. Description: value changed from -1 to INVALID_ID (the same, just prettier)
  296. ...
  297.     pd->ModeID=INVALID_ID;
  298. ...
  299.  
  300. ----------------------------------------------------------------------------------------------------
  301. (4.56.8) - Work:sc/Programs/ModePro/Daemon/MPNodes.c
  302. Description: if ModeID is INVALID_ID, (ie app supplies SA_LikeWorkbench), then it ignores ModeID 
  303.              since OrigDisplayID can be INVALID_ID aswell if user typed in a name. 
  304. ...
  305.     if(ModeID!=INVALID_ID)
  306.     {
  307.       if((dn->OrigDisplayID ==  ModeID) || (dn->OrigDisplayID == (ModeID | ALL_MODES)) )     
  308.       {
  309.         return(dn);
  310.       }
  311.     }
  312.  
  313. ...
  314.  
  315. ----------------------------------------------------------------------------------------------------
  316. (4.56.9) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  317. Description: Best Mode support
  318. ...
  319.         case MS_PROMOTE_BEST_MODE://                                                                   (4.56.9)
  320. //                                                                                                     (4.56.9)
  321. DEBUG_CODE(DKP("Find Best Mode\n"););//                                                                (4.56.9)
  322. //                                                                                                     (4.56.9)
  323.           pd->OverscanType  =pd->DNode->OverscanType;//                                                (4.56.9)
  324.           pd->Width         =pd->DNode->Width;//                                                       (4.56.9)
  325.           pd->Height        =pd->DNode->Height;//                                                      (4.56.9)
  326.       //                                                                                               (4.56.9)
  327.           if(pd->DNode->Flags & DEPTH)//                                                               (4.56.9)
  328.           {//                                                                                          (4.56.9)
  329.             pd->Depth=pd->DNode->Depth;//                                                              (4.56.9)
  330.             pd->SetDepth=TRUE;//                                                                       (4.56.9)
  331.           }//                                                                                          (4.56.9)
  332.          //                                                                                            (4.56.9)
  333.           if(V39)//                                                                                    (4.56.9)
  334.           {//                                                                                          (4.56.9)
  335.             pd->ModeID=BestModeID(//                                                                   (4.56.9)
  336.                         ((pd->DNode->ModeID & MONITOR_ID_MASK) == MONITOR_ID_MASK ? BIDTAG_MonitorID : TAG_SKIP), pd->DNode->ModeID & MONITOR_ID_MASK,//  (4.56.9)
  337.                         BIDTAG_DesiredWidth,    pd->Width,//                                           (4.56.9)
  338.                         BIDTAG_DesiredHeight,   pd->Height,//                                          (4.56.9)
  339.                         BIDTAG_NominalWidth,    pd->Width,//                                           (4.56.9)
  340.                         BIDTAG_NominalHeight,   pd->Height,//                                          (4.56.9)
  341.                         (pd->SetDepth ? BIDTAG_Depth:TAG_IGNORE),           pd->Depth,//               (4.56.9)
  342.                         TAG_DONE);//                                                                   (4.56.9)
  343.           }//                                                                                          (4.56.9)
  344.           //                                                                                           (4.56.9)
  345.           pd->Changed=TRUE;//                                                                          (4.56.9)
  346.           break;
  347. ...
  348.  
  349.  
  350. ----------------------------------------------------------------------------------------------------
  351. (4.56.11) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  352. Description:Added skip
  353. ...
  354.                                 TAG_SKIP              ,(pd->SetDepth ? 0:1), 
  355. ...              
  356.  
  357. ----------------------------------------------------------------------------------------------------
  358. (4.58.1) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  359. Description: re-enabled this, fixes problem where the program that opened the screen closes the screen
  360.       freeing the original title, which is still used by some open windows.
  361. ...
  362.               pd->NewTags[pd->TagNumber].ti_Tag=SA_Title;//                                            (4.58.1)
  363.               pd->NewTags[pd->TagNumber].ti_Data=(ULONG)pd->OpenNode->ScreenTitle;//                   (4.58.1)
  364.               pd->TagNumber++;
  365. ...
  366.  
  367. ----------------------------------------------------------------------------------------------------
  368. (4.59.1) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  369. Description: previously added NULL to name[] which was wrong.
  370. ...
  371.         Buffer[l]=0;                              // Add NULL //                                         (4.56.6)
  372. ...
  373.  
  374. ----------------------------------------------------------------------------------------------------
  375. (4.60.1) - Work:sc/Programs/ModePro/Daemon/MPWinPatch.c
  376. Description: Now checks for valid taglist like Intuition.  could still fail.
  377. ...
  378.     /* valid ram *///                                                                                  (4.60.1)
  379.     if(((ULONG)nw->Extension & 1)==0 && TypeOfMem(nw->Extension))//                                    (4.60.1)
  380.     {
  381. ...
  382.  
  383. ----------------------------------------------------------------------------------------------------
  384. (4.61.1) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  385. Description: no longer check for WBENCHSCREEN in the NewScreen structure (for DataMat)
  386. ...
  387.       //pd->IsWorkbench =(ns->Type & SCREENTYPE)==WBENCHSCREEN;
  388. ...
  389.  
  390. ----------------------------------------------------------------------------------------------------
  391. (4.61.2) - Work:sc/Programs/ModePro/Daemon/MPReadArgs.c
  392. Description: Can get tooltypes if renamed
  393. ...
  394.       {//                                                                                              (4.61.2)
  395.         char pname[256];//                                                                             (4.61.2)
  396. //                                                                                                     (4.61.2)
  397.         if(GetProgramName(pname,256))//                                                                (4.61.2)
  398.         {//                                                                                            (4.61.2)
  399.           if(lock=GetProgramDir())//                                                                   (4.61.2)
  400.           {//                                                                                          (4.61.2)
  401.             if(NameFromLock(lock,path,512))//                                                          (4.61.2)
  402.             {//                                                                                        (4.61.2)
  403.               if(AddPart(path,pname,512))//                                                            (4.61.2)
  404.               {//                                                                                      (4.61.2)
  405.                 if(MPIcon=GetDiskObject(path))//                                                       (4.61.2)
  406.                 {//                                                                                    (4.61.2)
  407.                   LONG l;//                                                                            (4.61.2)
  408.                   //                                                                                   (4.61.2)
  409.                   for(l=0;MPIcon->do_ToolTypes[l];l++);//                                              (4.61.2)
  410.                   //                                                                                   (4.61.2)
  411.                   return(GetToolTypes(l,MPIcon->do_ToolTypes));//                                      (4.61.2)
  412.                 }//                                                                                    (4.61.2)
  413.               }//                                                                                      (4.61.2)
  414.             }//                                                                                        (4.61.2)
  415.           }//                                                                                          (4.61.2)
  416.         }//                                                                                            (4.61.2)
  417.       }
  418. ...
  419.  
  420. ----------------------------------------------------------------------------------------------------
  421. (4.62.1) - Work:sc/Programs/ModePro/Daemon/MPReadArgs.c
  422. Description: Added Debug option to command line
  423. ...
  424.                     "DEBUG/S";
  425. ...
  426.  
  427. ----------------------------------------------------------------------------------------------------
  428. (4.62.2) - Work:sc/Programs/ModePro/Daemon/MPReadArgs.c
  429. Description: Added define for debug
  430. ...
  431. #define RA_DEBUG       5
  432. ...
  433.  
  434. ----------------------------------------------------------------------------------------------------
  435. (4.62.3) - Work:sc/Programs/ModePro/Daemon/MPReadArgs.c
  436. Description: And RAResults size upped for above
  437. ...
  438. LONG RAResults[6]={0};
  439. ...
  440.  
  441. ----------------------------------------------------------------------------------------------------
  442. (4.62.4) - Work:sc/Programs/ModePro/Daemon/MPReadArgs.c
  443. Description: Uncommented this. for above
  444. ...
  445.     MPSem->Debug         =RAResults[RA_DEBUG];
  446. ...
  447.  
  448. ----------------------------------------------------------------------------------------------------
  449. (4.62.5) - Work:sc/Programs/ModePro/Daemon/MPReadArgs.c
  450. Description: Enabled Debug in Tooltypes
  451. ...
  452.   MPSem->Debug =ArgYesNo (ttypes,(UBYTE *)"DEBUG",FALSE);
  453. ...
  454.  
  455. ----------------------------------------------------------------------------------------------------
  456. (4.62.6) - Work:sc/Programs/ModePro/Daemon/MPLockPubPatch.c
  457. Description: Typo fixed, was "Workench", caused lockup with P96
  458. ...
  459.     if(strcmp("Workbench",Name)) // Can't f with Workbench! //4.53 @1 rewired 
  460. ...
  461.  
  462. ----------------------------------------------------------------------------------------------------
  463. (4.62.7) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  464.  
  465. ----------------------------------------------------------------------------------------------------
  466. (4.62.8) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  467. Description: If MP's public screen fails 'promotion' then this prevents it from opening a dead screen.
  468. ...
  469.       if(!GetTagData(SA_ModeProNode,0,TagList))
  470. ...
  471.  
  472. ----------------------------------------------------------------------------------------------------
  473. (4.62.9) - Work:sc/Programs/ModePro/Daemon/BestMode.c
  474. Description: New function
  475. ...
  476. ULONG ValidMonitorID(ULONG DispID)
  477. ...
  478.  
  479. ----------------------------------------------------------------------------------------------------
  480. (4.62.10) - Work:sc/Programs/ModePro/Daemon/BestMode.c
  481. Description: Weedout bad IDs
  482. ...
  483.         monitorid=ValidMonitorID(data);
  484. ...
  485.  
  486. ----------------------------------------------------------------------------------------------------
  487. (4.62.11) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  488. Description: Renamed to PrefsToDoPort
  489. ...
  490.         PutMsg(&MPSem->PrefsToDoPort,(struct Message *)mpm);
  491. ...
  492.  
  493. ----------------------------------------------------------------------------------------------------
  494. (4.62.12) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  495. Description: No longer waits for ModePro to show the gui, caused deadlocks when the palette req was open.
  496. ...
  497.       PutMsg(MPSem->DaemonPort,(struct Message *)mpm);//                                               (4.62.12)
  498. //      WaitForReply((struct Message *)mpm);
  499. ...
  500.  
  501. ----------------------------------------------------------------------------------------------------
  502. (4.62.13) - Work:sc/Programs/ModePro/Daemon/BestMode.c
  503. Description: commented out
  504. ...
  505. /*  if(!dwidth)//                                                                                      (4.62.13)
  506.     dwidth=nwidth;//                                                                                   (4.62.13)
  507.   //                                                                                                   (4.62.13)
  508.   if(!dheight)//                                                                                       (4.62.13)
  509.     dheight=nheight;//                                                                                 (4.62.13)
  510. */
  511. ...
  512.  
  513. ----------------------------------------------------------------------------------------------------
  514. (4.62.14) - Work:sc/Programs/ModePro/Daemon/MPPatch.c
  515. Description: Used to send a message to ModePro to open prefs, now opens prefs directly.
  516. ...
  517.       if(ShowGUI())//                                                                                  (4.62.14)
  518.       {
  519. ...
  520.  
  521. ----------------------------------------------------------------------------------------------------
  522. (4.63.1) (09/17/00) - Work:sc/Programs/ModePro/4.x/Daemon/MPMain.c
  523. Description: updated, changed in extras.lib
  524. ...
  525.     ex_CloseLibs(MP_Libs);
  526. ...
  527.  
  528. ----------------------------------------------------------------------------------------------------
  529. (4.63.2) (09/17/00) - Work:sc/Programs/ModePro/4.x/Daemon/MPMain.c
  530. Description: changed due to extras.lib
  531. ...
  532.   if(ex_OpenLibs(argc,
  533. ...
  534.  
  535. ----------------------------------------------------------------------------------------------------
  536. (4.63.3) (09/17/00) - Work:sc/Programs/ModePro/4.x/Daemon/MPVer.c
  537. Description: new version system makes this file obsolete
  538. ...
  539. /* Obsolete
  540. ...
  541.